/**
 * 
 */
package fr.gfi.agraf.vue.action.administrer.utilisateur;

import fr.gfi.agraf.service.IUtilisateurService;
import fr.gfi.agraf.utils.SpringFactory;
import fr.gfi.agraf.vue.action.AbstractApplicationSupportAction;
import fr.gfi.agraf.vue.action.login.LoginAction;
import fr.gfi.agraf.vue.bean.UtilisateurDTO;

/**
 * @author Zakaria
 *
 */
public abstract class AbstractTraitementUtilisateurAction extends AbstractApplicationSupportAction {

	/**
	 * 
	 */
	private static final long serialVersionUID = 5955032985139592816L;
	protected IUtilisateurService utilisateurService = (IUtilisateurService) SpringFactory
			.getApplicationContext().getBean(LoginAction.UTILISATEUR_SERVICE);
	protected static final String ERREUR_SAISIE_HIDDEN = "erreur.saisie.hidden";
	protected Long id;
	protected String nom;
	protected String prenom;
	protected String login;
	protected String oldLogin;
	protected String newPassword;
	protected String newPassword2;
	protected String oldEmail;
	protected String email;

	/**
	 * Créé utilisateurDTO à partir des attributs saisis
	 * 
	 * @return
	 */
	protected UtilisateurDTO creerUtilisateurDTO() {
		final UtilisateurDTO utilisateurDTO = new UtilisateurDTO();
		utilisateurDTO.setId(id);
		utilisateurDTO.setNom(nom);
		utilisateurDTO.setPrenom(prenom);
		utilisateurDTO.setIdentifiant(oldLogin);
		utilisateurDTO.setNewIdentifiant(login);
		utilisateurDTO.setNewMotDePasse(newPassword);
		utilisateurDTO.setEmail(oldEmail);
		utilisateurDTO.setNewEmail(email);
		return utilisateurDTO;
	}

	/**
	 * @return the id
	 */
	public Long getId() {
		return id;
	}

	/**
	 * @param id
	 *            the id to set
	 */
	public void setId(final Long id) {
		this.id = id;
	}

	/**
	 * @return the nom
	 */
	public String getNom() {
		return nom;
	}

	/**
	 * @param nom
	 *            the nom to set
	 */
	public void setNom(final String nom) {
		this.nom = nom;
	}

	/**
	 * @return the prenom
	 */
	public String getPrenom() {
		return prenom;
	}

	/**
	 * @param prenom
	 *            the prenom to set
	 */
	public void setPrenom(final String prenom) {
		this.prenom = prenom;
	}

	/**
	 * @return the login
	 */
	public String getLogin() {
		return login;
	}

	/**
	 * @param login
	 *            the login to set
	 */
	public void setLogin(final String login) {
		this.login = login;
	}

	/**
	 * @return the newPassword
	 */
	public String getNewPassword() {
		return newPassword;
	}

	/**
	 * @param newPassword
	 *            the newPassword to set
	 */
	public void setNewPassword(final String newPassword) {
		this.newPassword = newPassword;
	}

	/**
	 * @return the newPassword2
	 */
	public String getNewPassword2() {
		return newPassword2;
	}

	/**
	 * @param newPassword2
	 *            the newPassword2 to set
	 */
	public void setNewPassword2(final String newPassword2) {
		this.newPassword2 = newPassword2;
	}

	/**
	 * @return the oldEmail
	 */
	public String getOldEmail() {
		return oldEmail;
	}

	/**
	 * @param oldEmail
	 *            the oldEmail to set
	 */
	public void setOldEmail(final String oldEmail) {
		this.oldEmail = oldEmail;
	}

	/**
	 * @return the email
	 */
	public String getEmail() {
		return email;
	}

	/**
	 * @param email
	 *            the email to set
	 */
	public void setEmail(final String email) {
		this.email = email;
	}

	/**
	 * @return the oldLogin
	 */
	public String getOldLogin() {
		return oldLogin;
	}

	/**
	 * @param oldLogin
	 *            the oldLogin to set
	 */
	public void setOldLogin(final String oldLogin) {
		this.oldLogin = oldLogin;
	}

}
